package cn.itcast.service.system;

import cn.itcast.domain.system.User;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface UserService {

    /**
     * 分页查询
     * @param companyId 根据所属企业查询
     * @param pageNum 当前页
     * @param pageSize 页大小
     * @return 返回封装分页参数的PageInfo对象
     */
   PageInfo<User> findByPage(String companyId,Integer pageNum,Integer pageSize);

    /**
     * 根据id查询,回显到修改页面
     * @param id
     * @return
     */
    User findById(String id);

    /**
     * 查询列表全部
     * @param companyId
     * @return
     */
    List<User> findAll(String companyId);

    //新增
    void save(User user);

    //修改
    void update(User user);

    //删除
    boolean delete(String id);

 /**
  * 用户分配角色
  * @param userId
  * @param roleIds
  */
 void changeRole(String userId, String[] roleIds);

 User findByEmail(String email);
}
